1. Field of the Invention
The present invention relates to multi-dimensional computer networks. More particularly, the present invention relates to spindle synchronizing a plurality of spindles connected to a multi-dimensional computer network.
2. Description of the Prior Art
Disk storage systems may be accessible through a computer network; for example, they may be accessed indirectly through a server connected to the network, or they may be accessed directly as a network attached storage device. A disk storage system connected to a computer network may comprise a single spindle with multiple disks, or it may comprise an array of spindles in a conventional configuration referred to as Redundant Array of Independent Disks, or RAID.
A RAID storage system typically comprises a plurality of spindles which are accessed simultaneously in order to implement well known operations such as data striping (simultaneously writing multiple data blocks to multiple disks to increase throughput) or data mirroring (simultaneously writing a single data block to multiple disks to enhance data security). To facilitate simultaneous access to multiple disks located on separate spindles, the spindles of a RAID storage system are typically synchronized (frequency and phase locked). This is typically implemented by synchronizing the spindles to a synchronization signal generated relative to an index mark recorded on at least one disk of each spindle. The synchronization signal is typically communicated to all of the spindles over a common wire, for example, through a backplane bus in a rack of spindles.
There have been attempts to communicate the synchronization signal to all of the spindles using a network protocol, such as the SCSI network protocol. As illustrated in FIG. 1A, a SCSI network 2 is typically a one-dimensional network comprising a plurality of computer devices, such as a plurality of disk drives 4, which communicate with each other and to a server 6 over a shared transmission medium 8. An arbitration strategy is employed to determine the mastership of the shared transmission medium 8 to resolve access conflicts.
When attempting to spindle synchronize a plurality of disk drives, the latency associated with the network communication protocol, including arbitration latency, can induce an unacceptable amount of jitter in the synchronization signal leading to unacceptable performance. This jitter problem is magnified in multi-dimensional computer networks, such as in k-ary n-cube networks, where interconnecting and routing information between hundreds or even thousands of disk drives is significantly more complex than in a one-dimensional SCSI network comprising only a few disk drives. An example of a multi-dimensional computer network 10 is illustrated in FIG. 1B which shows that each node comprises more than two bi-directional ports which facilitates communication in multiple dimensions. Each node in the example of FIG. 1B comprises four bi-directional ports, where each port connects to another node to form a 2-ary, 4-cube multidimensional computer network 10.
There is a need to spindle synchronize a plurality of disk drives connected to a multi-dimensional computer network by communicating a synchronization signal to each disk drive in a manner that does not result in excessive jitter.
The present invention may be regarded as a multi-dimensional computer network comprising a multi-dimensional network controller for interconnecting a plurality of computer devices, including a plurality of disk drives, communicating via a network protocol through a plurality of nodes, each node comprising more than two bi-directional ports for simultaneously transmitting data in multiple dimensions through the multi-dimensional computer network. At least one of the disk drives comprises a disk for storing data and an index mark, a spindle motor for rotating the disk, a head for reading the data and the index mark stored on the disk, an index mark detector for generating an index mark detect signal in response to the head reading the index mark, an interface for receiving a spindle sync signal from the multi-dimensional network controller through the network protocol, and a spindle synchronization circuit, responsive to the index mark detect signal, for synchronizing the rotation of the disk to the spindle sync signal.
In one embodiment, at least one of the plurality of disk drives transmits an index mark detected message to the multi-dimensional network controller in response to the head reading the index mark, and the multi-dimensional network controller generates the spindle sync signal from the index mark detected message.
In another embodiment, the interface in the at least one of the plurality of disk drives comprises isochronous circuitry for isochronously receiving the spindle sync signal from the multi-dimensional network controller.
In still another embodiment, the spindle sync signal is generated from an external source, such as a clock generator or crystal.
In yet another embodiment, the rotation of the disk in each disk drive is synchronized according to a predetermined phase offset in order to minimize the rotational latency in a mirrored storage system.
The present invention may also be regarded as a multi-dimensional computer network comprising a plurality of interconnected switched nodes. At least one of the switched nodes comprises a disk for storing data and an index mark, a spindle motor for rotating the disk, a head for reading the data and the index mark stored on the disk, an index mark detector for generating an index mark detect signal in response to the head reading the index mark, more than two input ports and more than two output ports for connecting to other switched nodes and for simultaneously transmitting data in multiple dimensions through the multi-dimensional computer network, wherein at least one of the input ports for receiving a spindle sync message from another of the switched nodes, a data buffer for buffering message data received through the plurality of input ports from other switched nodes, routing circuitry for routing the message packets to selected output ports, and a spindle synchronization circuit, responsive to the index mark detect signal, for synchronizing the rotation of the disk relative to the spindle sync message.
In one embodiment, one of the plurality of switched nodes is a master switched node for generating the spindle sync message, and the master switched node multicasts the spindle sync message to the other switched nodes.
In another embodiment, the spindle sync message is generated from an external source, such as a clock generator or crystal.
In another embodiment, the at least one switched node comprises isochronous circuitry for receiving the spindle sync message isochronously and for transmitting the spindle sync message to another switched node isochronously.
In yet another embodiment, the rotation of the disk in each switched node is synchronized according to a predetermined phase offset in order to minimize the rotational latency in a mirrored storage system.